{#
 # ---------------------------------------------------------------------
 #
 # GLPI - Gestionnaire Libre de Parc Informatique
 #
 # http://glpi-project.org
 #
 # @copyright 2015-2024 Teclib' and contributors.
 # @copyright 2003-2014 by the INDEPNET Development Team.
 # @licence   https://www.gnu.org/licenses/gpl-3.0.html
 #
 # ---------------------------------------------------------------------
 #
 # LICENSE
 #
 # This file is part of GLPI.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <https://www.gnu.org/licenses/>.
 #
 # ---------------------------------------------------------------------
 #}

{% extends "generic_show_form.html.twig" %}
{% import 'components/form/fields_macros.html.twig' as fields %}
{% set params  = params ?? [] %}

{% block form_fields %}

    {% if not item.isNewItem() and item.isActive() and not has_rights_enabled %}
        <div class="alert alert-warning" role="alert">
            {{ __('There is currently no profile with access to assets with current definition.') }}
        </div>
    {% endif %}

    {% if item.isNewItem() %}
        {% set helper %}
            {{ __('The system name corresponds to the customizable part of the asset class which will correspond to the current definition. For example, assets linked to the system name "%s" will have the class "%s".')|format('Laptop', 'Glpi\\CustomAsset\\Laptop') }}
            {{ __('The value must contains only letters and must not end by "Model" or "Type".') }}
            {{ __('Also, the value must not be one of the following reserved names: %s.')|format('"' ~ reserved_system_names|join('", "') ~ '"') }}
        {% endset %}
        {{ fields.textField(
            'system_name',
            item.fields['system_name'],
            __('System name'),
            {
                'required': true,
                'pattern': '^(?!(' ~ reserved_system_names|join('|') ~ ')$)[A-Za-z]+(?<!Model|Type)$',
                'helper': helper
            }
        ) }}
    {% else %}
        {% set helper_html %}
            <em class="text-muted">
                {{ __('The class of assets related to current definition is "%s".')|format('Glpi\\CustomAsset\\%s'|format(item.fields['system_name'])) }}
            </em>
        {% endset %}
        {{ fields.textField(
            'system_name',
            item.fields['system_name'],
            __('System name'),
            {
                'disabled': true,
                'add_field_html': helper_html,
            }
        ) }}
    {% endif %}

    {{ parent() }}
{% endblock %}

{% block more_fields %}
    {{ fields.dropdownWebIcons(
        'icon',
        item.fields['icon'],
        __('Icon'),
    ) }}
{% endblock %}
